package yz.cp.back.u.entity;

import lombok.Data;
import lombok.EqualsAndHashCode;
import yz.cp.back.base.BaseEntity;

/**
 * <p>
 * 用户登录验证表
 * </p>
 *
 * @author jobob
 * @since 2019-04-03
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class UserLogin extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 用户ID
     */
    private String id;

    /**
     * 用户名(手机号)
     */
    private String username;

    /**
     * 密码
     */
    private String password;

    /**
     * 加盐
     */
    private String salt;

    /**
     * 用户状态(0-正常,1-冻结)
     */
    private Integer status;

    /**
     * app_token
     */
    private String appToken;

    /**
     * 公钥
     */
    private String pubkey;

    /**
     * 私钥
     */
    private String prikey;

    /**
     * 章url
     */
    private String sealUrl;

    /**
     * 章hash
     */
    private String sealHash;

    /**
     * 用户是否被锁住，锁住后需24小时后再次登录，或者联系管理员解锁
0-未加锁
非0-已加锁
     */
    private Boolean islocked;

    /**
     * 是否系统用户，系统用户不允许被删除
0-非系统用户
1-系统用户
     */
    private Boolean issysUser;

    /**
     * 错误密码登录次数，成功登录后初始为0
     */
    private Integer pwdErrorCount;

    /**
     * 强制修改密码标志
非0时，用户登录必须先修改密码
     */
    private Boolean forceModifyPwd;

    /**
     * 密码失效日期=密码生效日期+90天
用户在密码失效日期及之后登录，必须先修改密码
     */
    private Integer pwdExpiryDate;

    /**
     * 累计登录次数
     */
    private Integer loginTimes;

    /**
     * 最近登录时间
     */
    private Integer latestLoginTime;

}
